import { Link } from '@brillout/docpress'
import { UiFrameworkExtension } from '../../components'

With Vike, you have the choice between:
- Using <Link href="/extensions">Vike extensions</Link>, for a quick start.
- Implementing your own custom integrations, for full control over integrating your favorite tools.

In general, we recommend always using Vike extensions and falling back to a custom integration only if you have a clear reason to do so.

> Vike extensions are highly polished integrations. But they're also slightly opinionated and may not fit what you need.

For example:
 - Start using Vike with <UiFrameworkExtension name />.
 - If you run into a blocker because of <UiFrameworkExtension succint />, then create an issue/discussion at the GitHub repository of <UiFrameworkExtension succint />.
 - If a maintainer of <UiFrameworkExtension succint /> replies that resolving your blocker is out-of-scope, then start considering a custom integration.

> You can also eject a Vike extension, for progressively moving from the ejected implemention of the Vike extension towards a custom integration. See <Link href="/optional-control" />.

That said, many large companies need bespoke integrations, and opting out of Vike extensions can be a sensible choice. If that's your case, then chances are you already have a clear reason for wanting a custom integration.

## See also

- <Link href="/optional-control" />
- <Link href="/react#custom-integration" />
- <Link href="/vue#custom-integration" />
- <Link href="/solid#custom-integration" />
